1. Field of the Invention
The present invention relates to digital graphics systems. More specifically, the present invention relates to methods and circuits for accurately de-interlacing a video signal.
2. Discussion of Related Art
Modern video signals typically consist of a sequence of still images, or “frames.” By displaying the sequence of frames in rapid succession on a display unit such as a computer monitor or television, an illusion of full motion video can be produced. For example, a standard NTSC (National Television Systems Committee) television display has a frame rate of 29.970 fps (frames per second). For historical reasons, the frames in video displays for most consumer applications (and many professional applications) are formed from “interlaced” video signals in which the video signals are made up of “fields” that include half the data required for a full frame. Specifically, each field includes every other row of pixels that would be included in a complete frame, with one field (the “odd field”) including all the odd rows of the frame, and the other field (the “even field”) including all of the even rows.
FIG. 1 depicts this interlacing concept, as a view 110 is interlaced into an odd field 120 and an even field 130. Odd field 120 includes odd rows SO(1), SO(2), SO(3), SO(4), SO(5), SO(6), SO(7), and SO(8), which represent rows 1, 3, 5, 7, 9, 11, 13, and 15, respectively, of view 110. Even field 130 includes even rows SE(1), SE(2), SE(3), SE(4), SE(5), SE(6), SE(7), and SE(8), which represent rows 2, 4, 6, 8, 10, 12, 14, and 16, respectively, of view 110. Note that each of odd rows SO(1)–SO(8) in field 120 corresponds to a blank row (i.e., a row with no pixel values) in field 130, while each of even rows SE(1)–SE(8) in field 130 corresponds to a blank row in field 120.
View 110 depicts a white square 111 formed in a shaded background 112. Therefore, odd rows SO(1)–SO(8) are all shaded, except for a white portion 121 in each of odd rows SO(4), SO(5), and SO(6) corresponding to the portion of those rows corresponding to white square 111. Similarly, even rows SE(1)–SE(8) are all shaded, except for a white portion 131 in each of even rows SE(3), SE(4), and SE(5), corresponding to the portion of those rows corresponding to white square 111.
Note that color video signals contain chrominance and luminance information. Chrominance is that portion of video that corresponds to color values and includes information about hue and saturation. Color video signals may be expressed in terms of a red component, a green component, and a blue component. Luminance is that portion of video corresponding to brightness value. In a black and white video signal, luminance is the grayscale brightness value of the black and white signal. In a color video signal, luminance can be converted into red, green and blue components, or can be approximated by a weighted average of the red, green and blue components. For example, in one well-known scheme, luminance is approximated by the equation: 0.30*red component+0.59*green component+0.11*blue component. For explanatory purposes, shaded regions of the Figures represent lower luminance values than blank (white) regions. For example, the white portion 121 in odd row SO(4) has a higher luminance value than the shaded portion of the same row.
To generate a progressive (i.e., non-interlaced) video display from an interlaced video signal, the video signal must be de-interlaced. Conventional de-interlace methodologies can be divided into two main categories—2D de-interlacing or 3D de-interlacing. In 2D de-interlacing, a frame is re-created from a single field via interpolation of the rows in that field. A common 2D de-interlacing technique involves duplicating each row of a single frame to provide pixel values for the blank rows; i.e., each blank row in an odd field could be filled with a copy of the odd row directly below that empty row, while each blank row in an even field could be filled with a copy of the even row directly above that empty row. 2D de-interlacing is particularly useful for scenes involving fast motion since even if a scene change occurs between consecutive fields, such changes would not affect (distort) a frame formed using “pure” common-field pixel interpolation (i.e., formed using only the pixels in a single field).
For example, FIG. 2A shows a sequence of views 210A, 210B, and 210C from which a video signal is to be generated. View 210A includes a white square 211A on a shaded background 212A, view 210B includes just a shaded background 212B, and view 210C includes a white square 211C on a shaded background 212C. Therefore, the sequence of views 210A–210C represent a scene in which a white square flashes on and off over a shaded background. If this flashing occurs at a rate greater than twice the frame rate of the final video signal, the interlace process could result in only a single field being generated for each state (on/off) of the white square. The corresponding sequence of fields could then look something like fields 220A, 220B, and 220C. Odd field 220A includes shaded odd rows SO(1)A–SO(8)A, with each of rows SO(4)A–SO(6)A including a white portion 221A corresponding to white square 211A in view 210A. Even field 220B includes even rows SE(1)B–SE(8)B, which are all fully shaded. And odd field 220C includes shaded odd rows SO(1)C–SO(8)C, with each of rows SO(4)C–SO(6)C including a white portion 221C corresponding to white square 211C in view 210C.
Using 2D de-interlacing, the rows in each of fields 220A, 220B, and 220C could then be “doubled up” to form frames 230A, 230B, and 230C, respectively, for the final video display. Specifically, each row of a field is repeated once to form a frame. Because of white portions 221A in rows SO(4)A–SO(6)A of field 220A, frame 230A includes a white square 231A formed on a shaded background 232A. Similarly, the white portions 221C in rows SO(4)C–SO(6)C in field 220C result in frame 230C having a white square 231C on a shaded background 232C. Meanwhile, since all of even rows SE(1)B–SE(8)B in field 220B are completely shaded, the row doubling of the 2D de-interlacing process results in frame 230B being a solid shaded square 232B. In this manner, the 2D de-interlacing process generates a series of frames that properly display the flashing white square on the shaded background present in the original scene.
However, note that 2D de-interlacing necessarily reduces the resolution of the final video display, since only half of the image data (i.e., a single field) is used to generate each frame. This not only results in less detail in the final video display, but also can introduce significant inaccuracies for certain image patterns. For example, FIG. 2B shows a sequence of views 210D, 210E, and 210F from which a video signal is to be generated. Each of views 210D–210F includes three white lines 213D on a shaded background 212D. Thus, views 210D–210F represent a still, or static, scene. However, the interlacing process could create fields in which white lines 213D are aligned with only odd (or only even) rows, in which case half of the interlaced fields would not include any information about the white lines. Thus, an alignment of white lines 213D with odd rows could result in a sequence of fields 220D, 220E, and 220F.
Odd field 220D includes shaded odd rows SO(1)D–SO(8)D, with each of rows SO(4)D–SO(6)D including a white portion 221D corresponding to a white line 213D in view 210D. Similarly, odd field 220F includes shaded odd rows SO(1)F–SO(8)F, with each of rows SO(4)F–SO(6)F including a white portion 221F corresponding to white lines 213D in view 210F. However, even field 220E only includes fully shaded even rows SE(1)E–SE(8)E. Therefore, the interlaced sequence of fields 220D–220F is identical to the interlaced sequence of fields 220A–220C shown in FIG. 2A, even though the original scenes are completely different. As a result, a subsequent 2D de-interlacing operation on fields 220D–220F will generate the same output frames as the de-interlacing operation described with respect to FIG. 2A. Specifically, the 2D de-interlacing process will generate frames 230D, 230E, and 230F, in which frames 230D and 230F include white squares 231D and 231F, respectively, on shaded backgrounds 232D and 232F, respectively, and frame 230E simply includes a solid shaded background 232E. Thus, the progressive video display created by frames 230D–230F would show a flashing white square on a shaded background, rather than the desired static scene of three white lines.
3D de-interlacing addresses this sort of resolution-related problem by merging successive fields into a single frame for the final video display. For example, in FIG. 2B, odd field 220D could be merged with even field 220E to form a single frame that correctly displays the three white lines on a shaded background. Odd field 220F could then be merged with the next even field (not shown for clarity, but similar to even field 220E) to form another frame having three white lines on a shaded background. Thus, each frame in the resulting video signal would include the three white lines and the static nature of the original scene would be retained in the final video display. In this manner, 3D de-interlacing enables accurate video display of high-resolution static scenes.
Note, however, that the 3D de-interlacing methodology would lead to problems in a situation as described with respect to FIG. 2A, in which the rapid motion within a scene leads to view changes between successive fields. For example, if a 3D methodology were used to merge fields 220A and 220B of FIG. 2A, the resulting frame would depict three white lines (formed by white portions 221A in field 220A) on a shaded background, rather than the original white square on a shaded background. Furthermore, these three lines would remain static on the shaded background, since each odd frame (e.g., frames 220A and 220C) would include three white regions (e.g., portions 221A and 221C, respectively), which each even frame (e.g., frame 220B) would include only fully shaded rows. 3D de-interlacing would therefore result in an unchanging video display of three lines on a shaded background, rather than the flashing white square in the original scene.
Thus, because the interlacing process can generate the same sequence of fields from different original scenes, conventional 2D or 3D de-interlacing techniques will necessarily include one or the other of the display problems described above. Accordingly, it is desirable to provide a de-interlace system and method that provide accurate video display of interlaced video signals.